const hoildayList: TimeItem[] = [
  { y: '2023', m: '1', d: '1', cd: '日', s: '1', t: '元旦', hd: '元旦' },
  { y: '2023', m: '1', d: '2', cd: '一', s: '1', t: '', hd: '元旦' },
  { y: '2023', m: '1', d: '21', cd: '六', s: '1', t: '除夕', hd: '除夕' },
  { y: '2023', m: '1', d: '22', cd: '日', s: '1', t: '春节', hd: '春节' },
  { y: '2023', m: '1', d: '23', cd: '一', s: '1', t: '', hd: '春节' },
  { y: '2023', m: '1', d: '24', cd: '二', s: '1', t: '', hd: '春节' },
  { y: '2023', m: '1', d: '25', cd: '三', s: '1', t: '', hd: '春节' },
  { y: '2023', m: '1', d: '26', cd: '四', s: '1', t: '', hd: '春节' },
  { y: '2023', m: '1', d: '27', cd: '五', s: '1', t: '', hd: '春节' },
  { y: '2023', m: '4', d: '5', cd: '三', s: '1', t: '清明', hd: '清明' },
  { y: '2023', m: '4', d: '29', cd: '六', s: '1', t: '', hd: '劳动节' },
  { y: '2023', m: '4', d: '30', cd: '日', s: '1', t: '', hd: '劳动节' },
  { y: '2023', m: '5', d: '1', cd: '一', s: '1', t: '劳动节', hd: '劳动节' },
  { y: '2023', m: '5', d: '2', cd: '二', s: '1', t: '', hd: '劳动节' },
  { y: '2023', m: '5', d: '3', cd: '三', s: '1', t: '', hd: '劳动节' },
  { y: '2023', m: '6', d: '22', cd: '四', s: '1', t: '端午节', hd: '端午节' },
  { y: '2023', m: '6', d: '23', cd: '五', s: '1', t: '', hd: '端午节' },
  { y: '2023', m: '6', d: '24', cd: '六', s: '1', t: '', hd: '端午节' },
  { y: '2023', m: '9', d: '29', cd: '五', s: '1', t: '中秋节', hd: '中秋节' },
  { y: '2023', m: '9', d: '30', cd: '六', s: '1', t: '', hd: '中秋节' },
  { y: '2023', m: '10', d: '1', cd: '日', s: '1', t: '国庆节', hd: '国庆节' },
  { y: '2023', m: '10', d: '2', cd: '一', s: '1', t: '', hd: '国庆节' },
  { y: '2023', m: '10', d: '3', cd: '二', s: '1', t: '', hd: '国庆节' },
  { y: '2023', m: '10', d: '4', cd: '三', s: '1', t: '', hd: '国庆节' },
  { y: '2023', m: '10', d: '5', cd: '四', s: '1', t: '', hd: '国庆节' },
  { y: '2023', m: '10', d: '6', cd: '五', s: '1', t: '', hd: '国庆节' }
];

const hoildayMap = new Map<string, TimeItem>();

export function getHoildayMap(): Map<string, TimeItem> {
  if (hoildayMap.size > 0) return hoildayMap;
  return hoildayList.reduce((map, h) => {
    map.set(`${h.m}/${h.d}`, h);
    return map;
  }, hoildayMap);
}

export default hoildayList;
